Versi 1
| Field | Isi |
|---|---|
| Dokumen ID | VBS-MST-013 |
| Deskripsi | Akun perkiraan: mengelola hierarki kelompok, subkelompok, jenis rekening, dan akun; menambah / mengubah / mengarsipkan akun; opsi metode bayar atau nama biaya / pemasukan; saldo on-demand |
| Nomor Revisi | 1 |
| Tanggal | 2026-10-04 |
| Keterangan | Dokumentasi baseline dari dokumentasi fitur demo dan kode FE |
1. Ringkasan
a. In scope
- User dapat melihat akun perkiraan dalam tab Akun, Jenis Akun, Sub Kelompok, dan Kelompok
- User dapat mencari berdasarkan nama akun, nomor akun, jenis akun, sub kelompok, dan kelompok
- User dapat menambah akun (nama, jenis akun, mata uang asing opsional) lewat modal
- User dapat menambahkan akun sekaligus sebagai metode bayar, atau menyesuaikan nama biaya / pemasukan terkait
- User dapat melihat detail, mengubah, menghapus massal, dan membuka arsip akun
- User dapat memuat saldo akun on-demand
- User dapat menambah / mengubah jenis akun pada tab terkait
b. Catatan
c. Kesimpulan
- [FE] -
- [BE] -
2. Functional Requirement
| Kode | Deskripsi |
|---|---|
| FR-01 | Sistem menampilkan hierarki akun: kelompok → subkelompok → jenis rekening → akun |
| FR-02 | Sistem menampilkan daftar akun dengan nama, saldo, nomor rekening, jenis, sub kelompok, kelompok, dan mata uang |
| FR-03 | User dapat mencari akun berdasarkan nama, nomor, jenis, sub kelompok, dan kelompok |
| FR-04 | User dapat menambah akun dengan nama dan jenis akun; mata uang asing untuk jenis kas/bank tertentu |
| FR-05 | User dapat menambahkan akun sebagai metode bayar atau menyesuaikan nama biaya / pemasukan terkait |
| FR-06 | User dapat melihat detail, mengubah, menghapus massal, dan mengarsipkan akun |
| FR-07 | User dapat memuat saldo akun secara on-demand |
| FR-08 | User dapat mengelola jenis rekening pada tab Jenis Akun |
3. Use Case List
| Kode | Deskripsi |
|---|---|
| UC-01 | Melihat hierarki dan daftar akun perkiraan |
| UC-02 | Mencari akun perkiraan |
| UC-03 | Menambah akun perkiraan |
| UC-04 | Menambah akun sekaligus metode bayar atau biaya / pemasukan |
| UC-05 | Melihat detail dan mengubah akun |
| UC-06 | Menghapus akun massal |
| UC-07 | Memuat saldo akun on-demand |
| UC-08 | Membuka arsip akun |
4. Use Case Scenario
UC-01 : Melihat hierarki dan daftar akun perkiraan
| Aktor | User brand |
| Deskripsi | User melihat struktur akun perkiraan |
| Prekondisi | User sudah login dan membuka brand |
| Alur utama | 1. User membuka menu Master, Akuntansi, Akun Perkiraan. 2. Sistem menampilkan tab Akun, Jenis Akun, Sub Kelompok, Kelompok. 3. Pada tab Akun, sistem menampilkan nama, saldo, nomor, jenis, sub kelompok, kelompok, mata uang. |
| Alur negatif | - Jika gagal memuat, tampil "Data Akun Tidak Ditemukan". |
| Bisnis rule | - Hierarki: kelompok → subkelompok → jenis rekening → akun. - CRUD akun lewat modal, bukan route tambah terpisah. - Tab Kelompok dan Sub Kelompok bersifat baca saja di FE. - Tambah jenis akun butuh permission #jenis-rekening; akun memakai #rekening. |
| Postkondisi | Daftar / hierarki akun tampil |
| Trigger | User membuka Akun Perkiraan |
| Kode FR | FR-01 FR-02 |
UC-02 : Mencari akun perkiraan
| Aktor | User brand |
| Deskripsi | User mencari akun pada filter pencarian |
| Prekondisi | Halaman rekening terbuka |
| Alur utama | 1. User mengisi filter nama akun, nomor akun, jenis akun, sub kelompok, dan/atau kelompok. 2. Sistem memfilter daftar pada tab aktif. |
| Alur negatif | - Jika tidak ada hasil, daftar kosong. |
| Bisnis rule | - |
| Postkondisi | Hasil pencarian tampil |
| Trigger | User mengubah filter pencarian |
| Kode FR | FR-03 |
UC-03 : Menambah akun perkiraan
| Aktor | User brand dengan hak basic |
| Deskripsi | User menambah akun baru |
| Prekondisi | Jenis rekening tersedia |
| Alur utama | 1. User membuka modal Tambah Akun. 2. User mengisi nama akun dan jenis akun. 3. Jika jenis kas/bank (prefix 11), user dapat memilih mata uang asing. 4. User klik Simpan. |
| Alur negatif | - Jika nama kosong, muncul "Nama Akun harus di isi". - Jika nama sudah dipakai, muncul "Nama Akun telah digunakan". |
| Bisnis rule | - Payload akun: nama, jenis_rekening_id, foreign_currency opsional (bukan IDR). |
| Postkondisi | Akun baru tersimpan |
| Trigger | User klik Simpan |
| Kode FR | FR-04 |
UC-04 : Menambah akun sekaligus metode bayar atau biaya / pemasukan
| Aktor | User brand dengan hak basic |
| Deskripsi | User menambah akun dengan opsi tambahan |
| Prekondisi | Modal tambah akun terbuka |
| Alur utama | 1. Setelah memilih jenis akun yang mendukung, user membuka opsi tambahan. 2. Untuk kas/bank/hutang/piutang tertentu: pilih jenis metode bayar dan cabang penggunaan. 3. Untuk jenis biaya / pemasukan tertentu: isi nama biaya/pemasukan, cabang, klaster (jika ada), jenis biaya. 4. User klik Simpan. |
| Alur negatif | - Jika opsi tidak valid, simpan akun tetap bisa gagal pada langkah sekunder. |
| Bisnis rule | - Opsi metode bayar: tunai, EDC, e-wallet, transfer. - Opsi biaya/pemasukan muncul untuk prefix jenis tertentu (51/52/53/61/62/63/64/72/82, kecuali beberapa nomor khusus). - Setelah create akun, FE memanggil create metode pembayaran atau create biaya. |
| Postkondisi | Akun dan entitas terkait tersimpan |
| Trigger | User klik Simpan dengan opsi aktif |
| Kode FR | FR-05 |
UC-05 : Melihat detail dan mengubah akun
| Aktor | User brand |
| Deskripsi | User melihat dan mengubah akun |
| Prekondisi | Akun ada di daftar |
| Alur utama | 1. User klik baris akun untuk membuka modal lihat. 2. User pilih edit jika punya hak. 3. User mengubah data lalu simpan. |
| Alur negatif | - Jika gagal, muncul pesan error dari server. |
| Bisnis rule | - |
| Postkondisi | Detail tampil / akun terbarui |
| Trigger | User klik baris / simpan edit |
| Kode FR | FR-06 |
UC-06 : Menghapus akun massal
| Aktor | User brand dengan hak basic |
| Deskripsi | User menghapus beberapa akun sekaligus |
| Prekondisi | Minimal satu akun dicentang |
| Alur utama | 1. User mencentang akun. 2. User klik Hapus. 3. Sistem menghapus akun terpilih. |
| Alur negatif | - Jika gagal, muncul pesan error dari server. |
| Bisnis rule | - Hapus massal lewat POST /rekening/bulk-delete. |
| Postkondisi | Akun terhapus dari daftar aktif |
| Trigger | User klik Hapus |
| Kode FR | FR-06 |
UC-07 : Memuat saldo akun on-demand
| Aktor | User brand |
| Deskripsi | User menampilkan saldo akun yang belum dimuat |
| Prekondisi | Kolom saldo bernilai null |
| Alur utama | 1. User klik ikon mata pada kolom saldo. 2. Sistem memuat saldo akun tersebut. |
| Alur negatif | - Jika gagal memuat, saldo tetap tidak tampil. |
| Bisnis rule | - Saldo tidak selalu dimuat di daftar awal. |
| Postkondisi | Saldo akun tampil |
| Trigger | User klik ikon saldo |
| Kode FR | FR-07 |
UC-08 : Membuka arsip akun
| Aktor | User brand dengan hak archive |
| Deskripsi | User membuka arsip akun |
| Prekondisi | Ada akun tidak aktif |
| Alur utama | 1. User membuka halaman arsip rekening. 2. Sistem menampilkan akun tidak aktif / terarsip. |
| Alur negatif | - Jika kosong, daftar arsip kosong. |
| Bisnis rule | - |
| Postkondisi | Arsip akun tampil |
| Trigger | User membuka arsip |
| Kode FR | FR-06 |
5. Data Flow Diagram
DFD-01
6. Sequence Diagram
SD-01 — UC-01 : Melihat hierarki dan daftar akun perkiraan
SD-02 — UC-02 : Mencari akun perkiraan
SD-03 — UC-03 : Menambah akun perkiraan
SD-04 — UC-04 : Menambah akun sekaligus metode bayar atau biaya / pemasukan
SD-05 — UC-05 : Melihat detail dan mengubah akun
SD-06 — UC-06 : Menghapus akun massal
SD-07 — UC-07 : Memuat saldo akun on-demand
SD-08 — UC-08 : Membuka arsip akun
7. Table Schema
8. API Schema
| Endpoint | Status | Perubahan |
|---|---|---|
GET /rekening | existing | - |
GET /rekening/:id | existing | - |
POST /rekening | existing | - |
PUT /rekening/:id | existing | - |
DELETE /rekening/:id | existing | - |
POST /rekening/bulk-delete | existing | - |
POST /rekening/bulk-update | existing | - |
GET /kelompok | existing | - |
GET /kelompok/:id | existing | - |
GET /kelompok/with-includes | existing | - |
GET /sub-kelompok | existing | - |
GET /sub-kelompok/:id | existing | - |
GET /jenis-rekening | existing | - |
GET /jenis-rekening/:id | existing | - |
POST /jenis-rekening | existing | - |
PUT /jenis-rekening/:id | existing | - |
DELETE /jenis-rekening/:id | existing | - |
POST /biaya/bulk | existing | - |
GET /gudang | existing | - |